#ifndef lcthw_List_algos_h
#define lcthw_List_algos_h

#include <lcthw/list.h>                     // to have access to the List and ListNode structures

typedef int (*List_compare)(const void *a, const void *b);      // function pointer to compare two elements

int List_bubble_sort(List *list, List_compare cmp);             // function to sort the list using bubble sort

List *List_merge_sort(List *list, List_compare cmp);            // function to sort the list using merge sort

#endif